[INFO] fetching crate parallel 0.11.3...
[INFO] checking parallel-0.11.3 against master#af3c6e733a40e671550e0f0f5aeecaa13772ba56 for pr-74989
[INFO] extracting crate parallel 0.11.3 into /workspace/builds/worker-4/source
[INFO] validating manifest of crates.io crate parallel 0.11.3 on toolchain af3c6e733a40e671550e0f0f5aeecaa13772ba56
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+af3c6e733a40e671550e0f0f5aeecaa13772ba56" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] started tweaking crates.io crate parallel 0.11.3
[INFO] finished tweaking crates.io crate parallel 0.11.3
[INFO] tweaked toml for crates.io crate parallel 0.11.3 written to /workspace/builds/worker-4/source/Cargo.toml
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+af3c6e733a40e671550e0f0f5aeecaa13772ba56" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }`
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+af3c6e733a40e671550e0f0f5aeecaa13772ba56" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+af3c6e733a40e671550e0f0f5aeecaa13772ba56" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] 98b526cdf009e711805bfff8667f54fce9728b726a61937ab44cc1764414b0e1
[INFO] running `Command { std: "docker" "start" "-a" "98b526cdf009e711805bfff8667f54fce9728b726a61937ab44cc1764414b0e1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "98b526cdf009e711805bfff8667f54fce9728b726a61937ab44cc1764414b0e1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "98b526cdf009e711805bfff8667f54fce9728b726a61937ab44cc1764414b0e1", kill_on_drop: false }`
[INFO] [stdout] 98b526cdf009e711805bfff8667f54fce9728b726a61937ab44cc1764414b0e1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+af3c6e733a40e671550e0f0f5aeecaa13772ba56" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a6e60598678d6dae54b2e7c67e6759ed82004f5e34cd576eed29bb029f9296ab
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "a6e60598678d6dae54b2e7c67e6759ed82004f5e34cd576eed29bb029f9296ab", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.77
[INFO] [stderr]     Checking numtoa v0.0.7
[INFO] [stderr]     Checking permutate v0.3.2
[INFO] [stderr]    Compiling sys-info v0.4.1
[INFO] [stderr]     Checking num_cpus v1.13.0
[INFO] [stderr]     Checking wait-timeout v0.1.5
[INFO] [stderr]     Checking time v0.1.44
[INFO] [stderr]     Checking parallel v0.11.3 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unknown lint: `cyclomatic_complexity`
[INFO] [stdout]   --> src/execute/receive.rs:70:9
[INFO] [stdout]    |
[INFO] [stdout] 70 | #[allow(cyclomatic_complexity)]
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unknown_lints)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unknown lint: `cyclomatic_complexity`
[INFO] [stdout]   --> src/execute/receive.rs:70:9
[INFO] [stdout]    |
[INFO] [stdout] 70 | #[allow(cyclomatic_complexity)]
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unknown_lints)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/arguments/mod.rs:378:25
[INFO] [stdout]     |
[INFO] [stdout] 378 |     let parse_line: Box<Fn(io::Result<String>) -> io::Result<String>> =
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(io::Result<String>) -> io::Result<String>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/execute/dry.rs:26:26
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let pipe_action: Box<Fn(&mut StdoutLock, &str)> = if flags & arguments::SHELL_QUOTE != 0 {
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&mut StdoutLock, &str)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/input_iterator/lock.rs:22:62
[INFO] [stdout]    |
[INFO] [stdout] 22 |     pub fn try_next(&mut self, input: &mut String) -> Option<(usize)> {
[INFO] [stdout]    |                                                              ^^^^^^^ help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around method argument
[INFO] [stdout]    --> src/input_iterator/iterator.rs:231:48
[INFO] [stdout]     |
[INFO] [stdout] 231 |         for (actual, expected) in iterator.zip((1..4096)) {
[INFO] [stdout]     |                                                ^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/main.rs:242:9
[INFO] [stdout]     |
[INFO] [stdout] 242 |         /// Prints messages from executed commands in the correct order.
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 243 |         let errors = execute::receive_messages(input_rx, args, &base_path, &processed_path, &errors_path);
[INFO] [stdout]     |         -------------------------------------------------------------------------------------------------- rustdoc does not generate documentation for statements
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_doc_comments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/main.rs:245:9
[INFO] [stdout]     |
[INFO] [stdout] 245 |         /// Wait for all threads to exit before proceeding.
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 246 |         for thread in threads { thread.join().unwrap(); }
[INFO] [stdout]     |         ------------------------------------------------- rustdoc does not generate documentation for expressions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/arguments/mod.rs:378:25
[INFO] [stdout]     |
[INFO] [stdout] 378 |     let parse_line: Box<Fn(io::Result<String>) -> io::Result<String>> =
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(io::Result<String>) -> io::Result<String>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/execute/dry.rs:26:26
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let pipe_action: Box<Fn(&mut StdoutLock, &str)> = if flags & arguments::SHELL_QUOTE != 0 {
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&mut StdoutLock, &str)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/input_iterator/lock.rs:22:62
[INFO] [stdout]    |
[INFO] [stdout] 22 |     pub fn try_next(&mut self, input: &mut String) -> Option<(usize)> {
[INFO] [stdout]    |                                                              ^^^^^^^ help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/main.rs:242:9
[INFO] [stdout]     |
[INFO] [stdout] 242 |         /// Prints messages from executed commands in the correct order.
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 243 |         let errors = execute::receive_messages(input_rx, args, &base_path, &processed_path, &errors_path);
[INFO] [stdout]     |         -------------------------------------------------------------------------------------------------- rustdoc does not generate documentation for statements
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_doc_comments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/main.rs:245:9
[INFO] [stdout]     |
[INFO] [stdout] 245 |         /// Wait for all threads to exit before proceeding.
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 246 |         for thread in threads { thread.join().unwrap(); }
[INFO] [stdout]     |         ------------------------------------------------- rustdoc does not generate documentation for expressions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/arguments/mod.rs:553:9
[INFO] [stdout]     |
[INFO] [stdout] 553 |     let mut append_list = &mut Vec::new();
[INFO] [stdout]     |         ----^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/execute/exec_commands.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |         let mut command_buffer = &mut String::with_capacity(64);
[INFO] [stdout]    |             ----^^^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/execute/pipe.rs:41:17
[INFO] [stdout]    |
[INFO] [stdout] 41 |             let mut stdout = child.stdout.as_mut().expect("unable to open stdout of child");
[INFO] [stdout]    |                 ----^^^^^^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 9 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/arguments/mod.rs:553:9
[INFO] [stdout]     |
[INFO] [stdout] 553 |     let mut append_list = &mut Vec::new();
[INFO] [stdout]     |         ----^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/execute/exec_commands.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |         let mut command_buffer = &mut String::with_capacity(64);
[INFO] [stdout]    |             ----^^^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/execute/pipe.rs:41:17
[INFO] [stdout]    |
[INFO] [stdout] 41 |             let mut stdout = child.stdout.as_mut().expect("unable to open stdout of child");
[INFO] [stdout]    |                 ----^^^^^^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 10 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 5.53s
[INFO] running `Command { std: "docker" "inspect" "a6e60598678d6dae54b2e7c67e6759ed82004f5e34cd576eed29bb029f9296ab", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a6e60598678d6dae54b2e7c67e6759ed82004f5e34cd576eed29bb029f9296ab", kill_on_drop: false }`
[INFO] [stdout] a6e60598678d6dae54b2e7c67e6759ed82004f5e34cd576eed29bb029f9296ab
